SView for Windos Control为OCX控件提供三维模型基本的浏览、模型属性操作、基本三维对象操作、动画播放等功能的实现接口,可实现基本的 三维模型展示功能,以便于用户个性化定制属于自己的产品。文档主要介绍了OCX控件提供的接口说明。SView for Windows Control控件集成说明的介绍请查看SView for Windows Control 集成说明文档
功能模块 类型 接口 描述 备注
打开 方法 void Open(SHORT viewID,BSTR fileUris) 打开本地文件(支持单文件和多文件;打开远端URL路径文件(支持单文件和多文件)
方法 VARIANT_BOOL DoActions(BSTR actions) 打开远端文件(JSON格式参数)
显示配置 方法 void SetConfig(BSTR configJson) 持续旋转
高性能模式
存储模式
测量单位
使用LOD
小件剔除模式
合并面对象
使用边界线
重新计算法线
反锯齿
小件剔除比率
显示PMI
界面展示模式
GLES
属性 Configure 设置属性Configure的值为JSON格式数据,配置各项参数
方法 void SetBackgroundColor(SHORT viewID, BSTR topColor, BSTR bottomColor) 设置控件背景颜色
布局配置 方法 void SetConfig(String configJson) 装配树面板
视图面板
主工具栏
主命令工具栏
装配树显隐控制
树控件宽度自动
树控件宽度设置
会议功能按钮
VR功能按钮
基本浏览 方法 void Restore(SHORT viewID, BSTR shapeIDs, SHORT type) 复位
方法 void FullScreen(VARIANT_BOOL isFullScreen) 全屏
方法 void SetModelSelected(BSTR svlPath, VARIANT_BOOL selected) 拾取
方法 void FocusModel(BSTR svlPath) 聚焦显示
方法 void TakeScreenPicture(BSTR savePath) 保存截图
事件 OnRightMouseDownEvent(locationX,locationY) 鼠标右键点击事件
事件 OnRestoreViewEvent(restoreViewInfo) 模型复原事件
事件 OnModelSelectedChanged(svlPath,isSelected) 模型选中事件
事件 OnModelPreSelectChanged(svlPath,isSelected) 模型预选事件
事件 OnLoaded(loadInfo) 控件加载完成事件
事件 OnFileLoadEndEvent(fileLoadInfo) 模型加载完成事件
事件 OnLeftMouseDownEvent(locationX,locationY) 鼠标左键点击事件
模型属性 方法 void ModelSetVisible(SHORT viewID, BSTR modelID, SHORT type, VARIANT_BOOL visible) 显示、隐藏
方法 SetModelInitVisible(BSTR svlPath, VARIANT_BOOL visible) 显示、隐藏(不会被复原)  
方法 void SetModelColor(BSTR svlPath, BSTR colorStr) 颜色  
方法 BSTR GetModelPathByName(BSTR name) 获取模型内部标识  
方法 BSTR GetModelNameByPath(BSTR svlPath) 获取模型名称  
方法 BSTR PickShape(FLOAT x,FLOAT y,SHORT pickType) 获取模型部件路径  
方法 BSTR GetSelectedModels(SHORT viewID) 获取选中模型路径  
方法 BSTR ModelGetProperty(SHORT viewID, BSTR modelID, BSTR name) 获取模型属性,根据模型路径  
视图浏览 方法 void SetPerspective(SHORT viewID,SHORT viewType) 基本视图浏览:前视图、俯视图、仰视图、左视图、右视图、后视图、轴测图、显示网格  
方法 void SetAlpha(SHORT viewID, BSTR shapeID, FLOAT alpha) 设置透明度  
方法 void Highlight(SHORT viewID, BSTR shapeID,VARIANT_BOOL highlight) 设置高亮  
方法 bool GetHighlightState(BSTR svlPath) 获取模型是否高亮  
方法 SHORT ModelViewCreate(SHORT viewID) 视图创建  
方法 void ShowModelView(SHORT viewID, SHORT modelViewID) 视图切换  
方法 BSTR ModelViewToJson(SHORT viewID, BSTR modelViewID) 视图序列化成Json数据  
方法 BSTR ModelViewFromJson(SHORT viewID, BSTR jsonStr) 视图Json数据反序列化成视图  
渲染模式 方法 void SetViewParameter(SHORT viewID, BSTR name, BSTR value) 着色渲染:着色模式、边着色模式、线框模式、半透明模式、显示包围盒  
操作配置 方法 void SetMultiSelect(bool isMultiSelect) 多选  
方法 void SetDesignatedRotation(bool isDesignatedRotation) 指定旋转  
方法 void PropertySwitch(VARIANT_BOOL isOpen) 显示属性  
方法 void ModifyAddProperties(BSTR propertiesStr) 设置属性内容  
方法 void OnModelPreSelectChanged(BSTR svlPath,VARIANT_BOOL isSelected) 预选显示属性  
方法 BSTR OnGetCameraStates() 获取摄像机状态值  
方法 void SetCameraStates(LPCTSTR states) 设置摄像机状态值  
方法 void SetMoseHover(VARIANT_BOOL isHover) 鼠标悬停事件开关  
方法 void OnMouseHoverEvent(LPCTSTR locationX,LPCTSTR locationY) 鼠标悬停事件  
剖切 方法 void multiClip(SHORT viewID, BSTR paramJson) 基于坐标平面创建剖面,可调节剖切深度  
方法 void CancelClip(SHORT viewID) 关闭剖切  
爆炸图 方法 void Explosive(SHORT viewID, BSTR explosiveParamJson) 浏览爆炸图,调节爆炸间距  
方法 CancelExplosive(SHORT viewID) 关闭爆炸图  
动画 方法 void AnimationPlay() 开始  
方法 void AnimationPause() 暂停  
方法 void AnimationContinue() 继续  
方法 bool AnimationLoop(bool loop) 是否重复播放  
方法 void AnimationSetSpeed(float speed) 设置速度  
方法 void AnimationPlayRange(int startId, int endId) 播放指定段  
方法 void AnimationOpenFile(String animationFilePath) 打开动画文件  
方法 void AnimationClose() 关闭动画
批注 方法 VARIANT_BOOL ShowToolbar(BSTR toolbarName, VARIANT_BOOL visible) 打开批注工具栏
方法 BSTR NoteToJson(BSTR noteIDs) 文本批注序列化成Json数据  
方法 BSTR NoteFromJson(BSTR jsonStr) Json数据反序列化成文本批注  
漫游命令 方法 SHORT DoCommand(BSTR commandJson) 打开漫游命令
方法 SHORT DoCommand(BSTR commandJson) 关闭漫游命令  
测量命令 方法 SHORT DoCommand(BSTR commandJson) 打开测量命令
方法 SHORT DoCommand(BSTR commandJson) 关闭测量命令  
选择移动 方法 SHORT DoCommand(BSTR commandJson) 打开选择移动命令
方法 SHORT DoCommand(BSTR commandJson) 关闭选择移动命令  
装配树 方法 BSTR BomToJson(SHORT viewID) 装配树序列化  
打开文件
方法
void Open(SHORT viewID,BSTR fileUris)
说明
打开本地文件/打开网络文件
参数
参数 是否必须 说明
fileUris 本地文件路径/网络文件路径多个文件用;;分割
返回值
void
备注
本地文件路径示例 D:\\1.svl 打开D盘下的1.svl文件 网络文件示例 http://192.168.75.1:8080/svlfiles/1.svl
打开远端文件
方法
VARIANT_BOOL DoActions(BSTR actions)
说明
打开远端模型文件,actions为JSON格式数据;
参数
JSON格式数据示例如下:
{"Version" : "1.0.1","SViewCommand" : {"Other" : {"userName" : "base64(域账号)","projectCode" : "项目编号"},"Action" : {"Operator" : "Add","Files" : [{"File": {"Name": "base64(文件路径)","Assemblys": [{"Assembly": {"Name": "*代表整个模型,base64(构件名称)代表构件名称"}}]}}]}}}
参数 是否必须 说明
Version 版本号
userName 转为base64的域账号
Operator 暂为Add
File下的Name 转为base64的文件路径
Assembly下的Name *代表整个模型,或者转为base64的构件名称
返回值
True/False 打开成功/不成功
备注
方法配置参数
方法
void SetConfig(BSTR configJson)
说明
直接调用方法,传递JSON格式数据,配置各项参数,JSON文件格式
{
    "Common": [
        {
            "IsConRotate": "False",
            "ShowMode": "3"
        }
    ],
    "Render": [
        {
            "IsSimplityMode": "False",
            "DrawDataBufferType": "1",
            "RemoveSize": "5",
            "MeasureUnit": "0",
            "IsShowPMI": "True",
            "MsaaNum": "2",
            "GLES": "2",
            "BackgroundImagePath": ""
        }
    ],
    "Layout": [
        {
            "MainMenu": "False",
            "AssemblyTree": "True",
            "ModelView": "True",
            "ToolBar": "True"
        }
    ]
}
参数
参数 是否必须 说明
IsConRotate 值:True/False:持续/不持续旋转(设置模型是否持续旋转,默认值为False)
IsSimplityMode 值:True/False:使用/不使用高性能 (设置是否使用高性能模式,默认值为False)
DrawDataBufferType 值: 0内存优先,1显存优先,2磁盘优先(设置存储模式,默认值为1)
MeasureUnit 值: 0无,1毫米,2厘米,3米,4英寸,5英尺(设置测量功能测量单位,默认值为0)
IsUseLOD 值:True/False:使用/不使用LOD(设置渲染模式,默认值为False)
RemoveMode 值: 0模型,1屏幕(设置小件剔除模式,以屏幕来剔除或以模型来剔除,默认值为1)
IsMergeFace 值: True/False:合并/不合并面(设置模型是否合并面,默认值为Fasle)
RemoveSize 值: 0~50之间int整数(设置小件剔除百分比,默认值为0)
IsReadEdgeFlag 值:True/False:使用/不使用边界线(设置是否显示模型的边界线,默认值为True)
MsaaNum 值: 0关闭,1表示X2倍,2表示X4倍,3表示X8倍(设置多重采样抗锯齿倍率,默认值为2)
RemoveSize 值: 0~50之间int整数
IsShowPMI 值:True/False:显示/不显示PMI(设置模型是否显示批注、测量等信息,默认值为True)
ShowMode 值: 0无,1显示装配树,2显示视图(设置模型显示装配树、视图,默认值为0)
GLES 值: 1表示ES1,2表示ES2(设置GLES模式,默认值为1
返回值
void
备注
属性配置参数
属性
Configure
说明
设置属性Configure的值为JSON格式数据,配置各项参数,数据格式为:
<param name="Configure" value='{"Common": [{"IsConRotate": "False","ShowMode": "3"}],"Render": [{"IsSimplityMode":"True","DrawDataBufferType":"1", "RemoveSize": "5","MeasureUnit": "0","IsShowPMI": "True","MsaaNum": "2","GLES": "2",BackgroundImagePath": ""}]"Layout": [{"MainMenu": "False","AssemblyTree": "True","ModelView": "True","ToolBar": "True"}]}'>
参数
参数 是否必须 说明
value 为JSON格式数据,配置属性参数
返回值
void
备注
背景颜色
方法
void SetBackgroundColor(SHORT viewID, BSTR topColor, BSTR bottomColor)
说明
设置控件背景的顶部颜色和底部颜色
参数
参数 是否必须 说明
viewID 视口ID默认为0
topColor 为顶部颜色
bottomColor 为底部颜色
返回值
void
备注
颜色为十六进制颜色字符串颜色,示例"0x0000ff"
方法
void SetConfig(BSTR configJson)
说明
外部通过JSON文件配置,JSON文件格式:
{
    "Layout": [
        {
            "MainMenu": "False",
            "AssemblyTree": "True",
            "ModelView": "True",
            "ToolBar": "True",
            "TreeNodeVisible": "True",
            "AutoLeftToolbarWith": "True",
            "LeftToolbarWith": "180"
        }
    ]
}
参数
参数 是否必须 说明
AssemblyTree 值: True/False:显示/隐藏装配树面板(设置装配树面板的显隐,默认值为True
ModelView 值:True/False:显示/隐藏视图面板(设置装视图面板的显隐,默认值为True)
MainMenu 值: True/False:显示/隐藏主工具栏(设置工具栏的显隐,默认值为True)
ToolBar 值:True/False:显示/隐藏主命令工具栏(设置命令工具栏的显隐,默认值为True)
TreeNodeVisible 值:True/False:启用/禁用装配树节点选择控制模型显隐(设置装配树节点对模型显隐是否可控,默认值为True)
AutoLeftToolbarWith 值:True/False:自动适应/固定默认设置装配树面板和视图面板的宽度(设置树控件宽度是否自动,默认值为True)
LeftToolbarWith 值:int整数:设置装配树面板和视图面板的固定宽度,仅仅在AutoLeftToolbarWith设置为False时起作用(设置树控件默认宽度,默认值为180)
LeftToolMettingButton 值:True/False:显示/隐藏会议功能按钮
LeftToolVrButton 值:True/False:显示/隐藏VR功能按钮
返回值
void
备注
复位
方法
void Restore(SHORT viewID, BSTR shapeIDs, SHORT type)
说明
置模型恢复到初始化状态
参数
参数 是否必须 说明
viewID 视口ID默认为0
shapeIDs 模型唯一标识(见备注),如果为整个模型则为"All",如果为单个或多个则用svlPath
type 默认为0
返回值
void
备注
svlPath 示例"PATH|0|3|2|3" 如果有多个需要用","分隔开例如:"PATH|0|3|2|3,PATH|0|17|6,PATH|0|2"
全屏
方法
void FullScreen(VARIANT_BOOL isFullScreen)
说明
设置模型显示窗口全屏显示
参数
参数 是否必须 说明
isFullScreen True/False:全屏/关闭全屏
返回值
void
备注
拾取
方法
void SetModelSelected(BSTR svlPath, VARIANT_BOOL selected)
说明
设置模型的选中/取消选中
参数
参数 是否必须 说明
svlPath 模型唯一标识(见备注)
selected True/False:拾取/不拾取
返回值
void
备注
svlPath 示例"PATH|0|3|2|3" 如果有多个需要用";"分隔开例如:"PATH|0|3|2|3;PATH|0|17|6;PATH|0|2"
聚焦显示
方法
void FocusModel(BSTR svlPath)
说明
设置模型聚焦显示
参数
参数 是否必须 说明
svlPath 模型唯一标识 示例"PATH|0|3|2|3"
返回值
void
备注
svlPath 示例"PATH|0|3|2|3" 如果有多个需要用";"分隔开例如:"PATH|0|3|2|3;PATH|0|17|6;PATH|0|2"
保存截图
方法
void TakeScreenPicture(BSTR savePath)
说明
保存模型展示截图
参数
参数 是否必须 说明
savePath 截图保存的路径
返回值
void
备注
鼠标右键点击事件
事件
OnRightMouseDownEvent(locationX,locationY)
说明
点击鼠标右键会触发此事件,把鼠标的位置坐标分为X值和Y值作为返回值传递
参数
参数 是否必须 说明
locationX 鼠标位置X值
locationY 鼠标位置Y值
返回值
void
备注
模型复原事件
事件
OnRestoreViewEvent(restoreViewInfo)
说明
点击复原按钮对模型进行复原处理时,会触发此事件
参数
参数 是否必须 说明
restoreViewInfo 暂无内容传值
返回值
void
备注
模型选中事件
事件
OnModelSelectedChanged(svlPath,isSelected)
说明
进行选中模型操作时会触发此事件,把选中模型的svlPath和选中状态进行回传。点击装配树中模型进行选中操作也会触发此事件,把选中模型的svlPath和选中状态进行回传。
参数
参数 是否必须 说明
svlPath 选中模型的svlPath
isSelected 模型选中状态
返回值
void
备注
模型预选事件
事件
OnModelPreSelectChanged(svlPath,isSelected)
说明
进行预选模型操作时会触发此事件,把预选模型的svlPath和预选状态进行回传
参数
参数 是否必须 说明
svlPath 预选模型的svlPath
isSelected 预选模型状态
返回值
void
备注
控件加载完成事件
事件
OnLoaded(loadInfo)
说明
OCX控件加载完成后会触发此事件
参数
参数 是否必须 说明
loadInfo 暂无内容传值
返回值
void
备注
模型加载完成事件
事件
OnFileLoadEndEvent(fileLoadInfo)
说明
模型加载完成之后会触发此事件
参数
参数 是否必须 说明
fileLoadInfo 暂无内容传值
返回值
void
备注
鼠标左键点击事件
事件
OnLeftMouseDownEvent(locationX,locationY)
说明
点击鼠标左键会触发此事件,把鼠标的位置坐标分为X值和Y值作为返回值传递
参数
参数 是否必须 说明
locationX 鼠标位置X值
locationY 鼠标位置Y值
返回值
void
备注
显示、隐藏
方法
void ModelSetVisible(SHORT viewID, BSTR modelID, SHORT type, VARIANT_BOOL visible)
说明
设置模型的显示或隐藏
参数
参数 是否必须 说明
viewID 视口ID默认为0
modelID 模型唯一标识(见备注)
type 1 为隐藏/显示模型, 2 为隐藏/显示文本批注
visible True/False:显示/隐藏
返回值
void
备注
modelID 示例"PATH|0|3|2|3" 如果有多个需要用","分隔开,例如:"PATH|0|3|2|3,PATH|0|17|6,PATH|0|2"
显示、隐藏(不会被复原)
方法
SetModelInitVisible(BSTR svlPath, VARIANT_BOOL visible)
说明
设置模型的显示或隐藏,进行复原操作后,不会被复原
参数
参数 是否必须 说明
svlPath 模型唯一标识
visible True/False:显示/隐藏
返回值
void
备注
svlPath 示例"PATH|0|3|2|3" 如果有多个需要用";;"分隔开,例如:"PATH|0|3|2|3;;PATH|0|17|6;;PATH|0|2"
颜色
方法
void SetModelColor(BSTR svlPath, BSTR colorStr)
说明
设置模型颜色
参数
参数 是否必须 说明
svlPath 模型唯一标识
colorStr 十六进制颜色字符串颜色,示例"0x0000ff"
返回值
void
备注
svlPath 示例"PATH|0|3|2|3" 如果有多个需要用";"分隔开,例如:"PATH|0|3|2|3;PATH|0|17|6;PATH|0|2"
获取模型内部标识
方法
BSTR GetModelPathByName(BSTR name)
说明
SView单个取得模型内部标识(返回多个内部标识,多个标识一起设定)
参数
参数 是否必须 说明
name 模型零件名称
返回值
返回值类型 是否必须 说明
BSTR 返回多个内部标识,多个标识一起设定
备注
获取模型名称
方法
BSTR GetModelNameByPath(BSTR svlPath)
说明
通过svlPath获取模型名称;
参数
参数 是否必须 说明
svlPath 模型唯一标识
返回值
模型名称
备注
svlPath 示例"PATH|0|3|2|3",此svlPath只支持单个唯一标识处理;
获取模型部件路径(根据坐标值)
方法
BSTR PickShape(FLOAT x,FLOAT y,SHORT pickType);
说明
通过坐标点获取模型部件的路径;
参数
参数 是否必须 说明
x x代表当前鼠标点的横向坐标值。
y y代表当前鼠标点的竖向坐标值。
pickType pickShape代表模型选中类型,默认为4。
返回值
模型部件路径
备注
获取选中模型路径
方法
BSTR GetSelectedModels(SHORT viewID)
说明
获取选中模型的svlPath
参数
参数 是否必须 说明
viewID 视口ID默认为0
返回值
选中模型的svlPath
备注
svlPath 如果为多个用逗号隔开,例如:PATH|0|3|2|3,PATH|0|17|6,PATH|0|2
获取模型属性
方法
BSTR ModelGetProperty(SHORT viewID, BSTR modelID, BSTR name)
说明
根据模型路径svlPath获取模型属性
参数
参数 是否必须 说明
viewID 视口ID默认为0
modelID 模型路径svlPath(见备注)
name 默认为All
返回值
选中模型的svlPath
备注
svlPath 如果为多个用逗号隔开,例如:PATH|0|3|2|3,PATH|0|17|6,PATH|0|2
方法
void SetPerspective(SHORT viewID,SHORT viewType)
说明
基本视图浏览:前视图、俯视图、仰视图、左视图、右视图、后视图、轴测图,设置不同方位展示模型
参数
参数 是否必须 说明
viewID 视口ID默认为0
viewType 0前视图 1后视图 2右视图 3左视图 4仰视图 5俯视图 6轴视图
返回值
void
备注
方法
void SetAlpha(SHORT viewID, BSTR shapeID, FLOAT alpha)
说明
根据shapeID和透明度的值来设置模型透明度,percentage透明度,值为0~1之间
参数
参数 是否必须 说明
viewID 视口ID默认为0
shapeID 模型唯一标识(见备注)
alpha 设置模型的透明度,值为0~1之间,0为透明1为实体
返回值
void
备注
shapeID 示例"PATH|0|3|2|3" 如果有多个需要用","分隔开例如:"PATH|0|3|2|3,PATH|0|17|6,PATH|0|2"
方法
void Highlight(SHORT viewID, BSTR shapeID,VARIANT_BOOL highlight)
说明
根据shapeID模型标识,highlight是否高亮来设置高亮
参数
参数 是否必须 说明
viewID 视口ID默认为0
shapeID 模型唯一标识(见备注)
highlight 是否高亮显示,True/False高亮/不高亮
返回值
void
备注
shapeID 示例"PATH|0|3|2|3" 如果有多个需要用","分隔开例如:"PATH|0|3|2|3,PATH|0|17|6,PATH|0|2";
方法
bool GetHighlightState(BSTR svlPath)
说明
根据svlPath来获取模型是否高亮;
参数
参数 是否必须 说明
svlPath 模型唯一标识
返回值
True/False 高亮/不高亮
备注
svlPath 示例"PATH|0|3|2|3",此svlPath只支持单个唯一标识处理;
方法
SHORT ModelViewCreate(SHORT viewID)
说明
创建视图
参数
参数 是否必须 说明
viewID 视口ID默认为0
返回值
视图ID
备注
方法
void ShowModelView(SHORT viewID, SHORT modelViewID)
说明
根据视图ID切换视图
参数
参数 是否必须 说明
viewID 视口ID默认为0
modelViewID 视图ID
返回值
备注
方法
BSTR ModelViewToJson(SHORT viewID, BSTR modelViewID)
说明
根据视图ID序列化生成视图Json数据
参数
参数 是否必须 说明
viewID 视口ID默认为0
modelViewID 视图ID,为All则获取全部视图,多个modelViewID用逗号隔开,例如:1001,1002,1003,1004
返回值
视图json数据
备注
方法
BSTR ModelViewFromJson(SHORT viewID, BSTR jsonStr)
说明
根据视图Json数据生成视图
参数
参数 是否必须 说明
viewID 视口ID默认为0
jsonStr 视图Json数据
返回值
视图ID,多个ID用逗号隔开,例如:1001,1002,1003,1004
备注
方法
void SetViewParameter(SHORT viewID, BSTR name, BSTR value)
说明
着色模式、边着色模式、线框模式、半透明模式、显示包围盒、显示网格
参数
参数 是否必须 说明
viewID 视口ID默认为0
name 渲染模式name的值为"drawmode"
value value 的值为需要设置的模式: 0着色模式、1半透明模式、3线框模式、4边着色模式、5显示网格、6取消半透明模式、7显示/取消显示包围盒
返回值
void
备注
多选
方法
void SetMultiSelect(bool isMultiSelect)
说明
设置模型是否多选
参数
参数 是否必须 说明
isMultiSelect True/False:使用/不使用多选
返回值
void
备注
指定旋转
方法
void SetDesignatedRotation(bool isDesignatedRotation)
说明
设置模型是否指定旋转
参数
参数 是否必须 说明
isDesignatedRotation True/False:使用/不使用指定旋转
返回值
void
备注
显示属性
方法
void PropertySwitch(VARIANT_BOOL isOpen);
说明
设置模型属性列表显示隐藏
参数
参数 是否必须 说明
isOpen True/False:显示/隐藏属性列表
返回值
void
备注
设置属性内容
方法
void ModifyAddProperties(BSTR propertiesStr);
说明
设置模型属性列表内容
参数
参数 是否必须 说明
propertiesStr 参数格式: 属性名称::属性内容 多条属性内容用;;隔开。第一项为标题内容,无需添加::。清除属性列表内容直接输入''空字符串即可;
返回值
void
备注
例如:12_sldprt;;ID::4;;PlaceID::0;;ProtoTypeID::1;;颜色::0.800,0.800,0.800,1.000;;子模型数量::0;;实例数量::0;;视图数量::11;;PMI数量::0;;LOD0 面片数量::2436;;LOD1 面片数量::0
预选显示属性
方法
void OnModelPreSelectChanged(BSTR svlPath,VARIANT_BOOL isSelected);
说明
设置模型属性列表内容
参数
参数 是否必须 说明
svlPath 选择的模型零件路径
isSelected True/False:选中/取消选中
返回值
void
备注
获取摄像机状态值
方法
BSTR OnGetCameraStates();
说明
获取摄像机状态值
返回值
返回值类型 是否必须 说明
BSTR 返回值是Json类型的字符串。例如{"positon":"0 0 0","rotate":"1 1 1","zoom":"1 1 1"}。position、rotate、zoom分别代表平移、旋转、缩放的状态值。
参数
备注
设置摄像机状态值
方法
void SetCameraStates(LPCTSTR states);
说明
设置摄像机状态值
参数
参数 是否必须 说明
states 参数是Json格式的字符串。例如{"positon":"0 0 0","rotate":"1 1 1","zoom":"1 1 1"}。position、rotate、zoom分别代表平移、旋转、缩放的状态值。
返回值
void
备注
鼠标悬停事件开关
方法
void SetMoseHover(VARIANT_BOOL isHover);
说明
鼠标悬停事件开关
参数
参数 是否必须 说明
isHover True/False:选中/取消选中。
返回值
void
备注
鼠标悬停事件
方法
void OnMouseHoverEvent(LPCTSTR locationX,LPCTSTR locationY);
说明
鼠标悬停事件
参数
参数 是否必须 说明
locationX 参数locationX是鼠标悬停时,屏幕坐标x的值。
locationY 参数locationY是鼠标悬停时,屏幕坐标y的值。
返回值
void
备注
剖切
方法
void multiClip(SHORT viewID, BSTR paramJson)
说明
基于坐标平面创建剖面,可调节剖切深度,展示剖切面内容
参数
参数 是否必须 说明
viewID 视口ID默认为0
position viewID传默认值0,paramJson为json格式数据: { "ClipParameter": { "directionX": "1", "positionX": "50", "directionY": "0", "positionY": "50", "directionZ": "0", "positionZ": "50", "showClipPlane": "True", "showCutPlane": "True", "reverseClip": "False" } }
directionX 为沿X轴剖切(1为沿X轴正方向,-1为X轴负方向,0为X轴不剖切)
positionX 沿X轴剖切深度(0~100)
directionY 沿Y轴剖切(1为沿Y轴正方向,-1为Y轴负方向,0为Y轴不剖切)
positionY 沿Y轴剖切深度(0~100)
directionZ 沿Z轴剖切(1为沿Z轴正方向,-1为Z轴负方向,0为Z轴不剖切)
positionZ 沿Y轴剖切深度(0~100)
showClipPlane 是否显示示意面 显示为True,不显示为False
showCutPlane 是否显示盖面 显示为True,不显示为False
reverseClip 是否反向剖切 显示为True,不显示为False
返回值
void
备注
关闭剖切
方法
void CancelClip(SHORT viewID)
说明
关闭模型的剖切展示
参数
参数 是否必须 说明
viewID 视口ID默认为0
返回值
void
备注
爆炸图
方法
void Explosive(SHORT viewID, BSTR explosiveParamJson)
说明
展示模型爆炸效果
参数
参数 是否必须 说明
viewID 视口ID默认为0
explosiveParamJson paramJson为json格式数据:
{ "ExplosiveParameter": { "type": "1", "position": "50" } }
type 0为沿离中心点,1为左右爆炸,2为上下爆炸 position 爆炸位置为0~100
返回值
void
备注
关闭爆炸图
方法
CancelExplosive(SHORT viewID)
说明
关闭模型的爆炸展示
参数
参数 是否必须 说明
viewID 视口ID默认为0
返回值
void
备注
开始
方法
void AnimationPlay()
说明
开始播放模型的动画文件或者播放暂停的动画文件
参数
返回值
void
备注
暂停
方法
void AnimationPause()
说明
暂停模型动画文件的播放
参数
返回值
void
备注
继续
方法
void AnimationContinue()
说明
继续播放模型的动画文件
参数
返回值
void
备注
是否重复播放
方法
bool AnimationLoop(bool loop)
说明
设置模型动画文件的重复播放
参数
参数 是否必须 说明
loop true,循环播放;false 不循环
返回值
bool
备注
设置速度
方法
void AnimationSetSpeed(float speed)
说明
设置动画播放速度
参数
参数 是否必须 说明
speed 1-10倍速播放
返回值
void
备注
播放指定段
方法
void AnimationPlayRange(int startId, int endId)
说明
设置动画播放速度
参数
参数 是否必须 说明
startId 开始id
endId 结束id
返回值
void
备注
打开动画文件
方法
void AnimationOpenFile(String animationFilePath)
说明
打开模型动画文件
参数
参数 是否必须 说明
animationFilePath 动画文件路径
返回值
void
备注
关闭动画
方法
void AnimationClose()
说明
关闭动画播放
参数
返回值
void
备注
打开批注工具栏
方法
VARIANT_BOOL ShowToolbar(BSTR toolbarName, VARIANT_BOOL visible)
说明
打开手绘、文本、编辑、删除批注工具栏
参数
参数 是否必须 说明
toolbarName 工具栏名称为:NoteBar
visible 显示/隐藏 True为显示,False为隐藏
返回值
备注
文本批注序列化
方法
BSTR NoteToJson(BSTR noteIDs)
说明
根据批注ID,文本批注序列化成Json数据
参数
参数 是否必须 说明
noteIDs 文本批注ID,All为获取全部文本批注,多个ID用逗号隔开,例如:55410,55411,55412
返回值
为json格式数据
备注
文本批注反序列化
方法
BSTR NoteFromJson(BSTR jsonStr)
说明
根据批注Json数据反序列化生成文本批注
参数
参数 是否必须 说明
jsonStr 文本批注Json数据
返回值
文本批注ID,多个ID用逗号隔开,例如:55410,55411,55412
备注
打开测量命令
方法
SHORT DoCommand(BSTR commandJson)
说明
打开测量命令
参数
参数 是否必须 说明
commandJson commandJson为json格式数据:
{"CommandName":"CreateMeasureDistance","Parameters":{"type":"1"}}
CreateMeasureDistance 为距离测量命令名称
type 为测量类型 1为点点测量 2为点面测量 3为面面测量
返回值
void
备注
关闭测量命令
方法
int DoCommand(string commandJson)
说明
关闭测量命令
参数
参数 是否必须 说明
commandJson commandJson为json格式数据:
{"CommandName":"CloseCommand","Parameters":{"Name":"CreateMeasureDistance"}
CommandName 为CloseCommand关闭命令名称
Name 为CreateMeasureDistance测量命令名称
返回值
void
备注
打开漫游命令
方法
SHORT DoCommand(BSTR commandJson)
说明
打开漫游命令
参数
参数 是否必须 说明
commandJson commandJson为json格式数据: { "CommandName":"OpenWalkThrough", "Parameters": { "Type":"0", "WalkThroughSpeed":"1", "UpDirection":"2", "CameraFov":"70", } }
OpenWalkThrough 打开漫游命令名称
Type 默认值为0
WalkThroughSpeed 漫游速度为0.25~6
UpDirection 向上方向,0为X轴正方向,1为X轴负方向,2为Y轴正方向,3为Y轴负方向,4位Z轴正方向,5位Z轴负方向
CameraFov 视野大小.20~150
返回值
True/False 打开成功/不成功
备注
关闭漫游命令
方法
SHORT DoCommand(BSTR commandJson)
说明
关闭漫游命令
参数
参数 是否必须 说明
commandJson commandJson为json格式数据:
{"CommandName":"CloseCommand","Parameters":{"Name":"CreateMeasureDistance"}
CommandName 为CloseCommand关闭命令名称
Name 为OpenWalkThrough漫游命令名称
返回值
void
备注
打开选择移动命令
方法
SHORT DoCommand(BSTR commandJson)
说明
打开选择移动命令
参数
参数 是否必须 说明
commandJson commandJson为json格式数据:
{"CommandName":"OpenSelectedMove","Parameters":{"type":"0"}}
OpenSelectedMove 为距离测量命令名称
type 默认为0
返回值
void
备注
关闭选择移动命令
方法
int DoCommand(string commandJson)
说明
关闭选择移动命令
参数
参数 是否必须 说明
commandJson commandJson为json格式数据:
{"CommandName":"CloseCommand","Parameters":{"Name":"OpenSelectedMove"}
CommandName 为CloseCommand关闭命令名称
Name 为OpenSelectedMove选择移动命令名称
返回值
void
备注
装配树序列化
方法
BSTR BomToJson(SHORT viewID)
说明
把装配树序列化成Json数据
参数
参数 是否必须 说明
viewID 视口ID默认为0
返回值
装配树Json数据,Children为子装配树组,如果没有则为空。Name为装配名称。Guid为属性的GUID(如果属性值中有此属性)。SvlPath为装配的svlPath。ParentSvlPath为父装配的svlPath
备注